# 第一步：录入学生信息 1)提示用户在控制台输入3个学生的信息，学生信息包含姓名、年龄
# 2)要求：封装录入单个学生信息的函数，并返回学生的信息
# 第二步：展示学生列表信息 1)封装打印学生信息的函数，格式要求如右图：
# 第三步：统计学生总数 1)封装获取学生总数的函数，并对该函数进行调用和数据打印
# 第四步：查询学生信息 1)封装根据学生姓名查询学生信息的函数
# 2)提示用户“请输入要查询的学生姓名：”
# 3)如果存在，直接在控制台打印学生信息，格式为：“姓名：张三，年龄：25”
# 4)如果不存在，直接在控制台打印“对不起，名字叫【张三】的学生不存在”

# 封装录入单个学生信息函数
def input_info():
    name = input('请输入姓名:')
    age = int(input('请输入年龄'))
    info = {'name': name, 'age': age}
    return info


# 循环录入三个学生信息
list_info = []
for i in range(3):
    result = input_info()
    list_info.append(result)
print(list_info)


# 封装按规定展示学生列表信息函数
def show_info():
    print('----学生列表信息----')
    num = 1
    for i in list_info:
        print(f"{num}      {i.get('name')}      {i.get('age')}")
        num += 1
    print('------------------')


show_info()


# 封装统计学生总数函数
def len_info():
    return len(list_info)


print(len_info())


# 封装查询学生信息函数
def find_info():
    find_name = input('请输入要查找的姓名')
    for i in list_info:
        if find_name == i.get('name'):
            print(f'姓名:{find_name},年龄:{i.get("age")}')
            break
    else:
        print(f'对不起,姓名叫{find_name}的学生不存在')


find_info()
